package command.usuario;

import java.io.IOException;
import java.sql.SQLException;
import java.text.SimpleDateFormat;
import java.util.Date;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServletRequest;
import model.Triagem;
import command.ICommand;
import dao.assinatura.TriagemDAO;
import dao.fabrica.FabricaDAO;

public class EditarTriagemCommand implements ICommand{
	
	private String data;
	private String hora;
	private String naturezaAcao;
	private String encaminhamento;
	private String infoComplementar;
	private String obs;
	private String estadoCivil;
	private String comoSoube;
	private String renda;
	private String rendaComplementar;
	private String dependente;
	private String localResidencia;
	private String tipoImovel;
	private String situcaoImovel;
	private String religiao;
	private String necessidadeEspecial;
	private boolean resultado;
	private String triagemId;
	
	public String execute(HttpServletRequest request) throws ServletException, IOException {
			
			try {
				resultado = false;
				 naturezaAcao = request.getParameter("inputNatureza");
				 triagemId = request.getParameter("t");
				 if (naturezaAcao != null)
				 {
					 data = new SimpleDateFormat("dd/MM/yyyy").format(new Date());
					 hora = new SimpleDateFormat("HH:mm:ss").format(new Date().getTime());
					 encaminhamento = request.getParameter("inputEncaminhamento");
					 infoComplementar = request.getParameter("inputComplemento");
					 obs = request.getParameter("inputObs");
					 estadoCivil = request.getParameter("inputEstadoCivil");
					 comoSoube = request.getParameter("inputComoSoube");
					 renda = request.getParameter("inputRenda");
					 rendaComplementar = request.getParameter("inputRendaComplementar");
					 dependente = request.getParameter("inputDependentes");
					 localResidencia = request.getParameter("inputResidencia");
					 tipoImovel = request.getParameter("inputImovel");
					 situcaoImovel = request.getParameter("inputSitImovel");
					 religiao = request.getParameter("inputReligiao");
					 necessidadeEspecial = request.getParameter("inputEspecial");
					 if (request.getParameter("aprovado") != null)
					 {
						 resultado = true;
					 }
					 
					 
					 Triagem triagem = new Triagem(data, hora, naturezaAcao, encaminhamento, infoComplementar, obs, estadoCivil, comoSoube, renda, dependente, rendaComplementar, localResidencia, tipoImovel, situcaoImovel, religiao, necessidadeEspecial, resultado);
					 triagem.setId(Integer.parseInt(triagemId));
					 
					 TriagemDAO triagemDAO = FabricaDAO.createTriagem();
					 
					 triagemDAO.updateTriagem(triagem);
					 
				 }else
					 return "/paginas/editar/triagem.jsp?t="+triagemId;
				 
				 
			} catch (SQLException e) {
				e.printStackTrace();
				return "/paginas/cadastro_invalido.jsp";
			}
			
			return "/paginas/editar/triagem.jsp?resultado=OK&t="+triagemId;
		}
}
